home *** CD-ROM | disk | FTP | other *** search
- #ifndef __EWL_COMBO_H__
- #define __EWL_COMBO_H__
-
- /**
- * @file ewl_combo.h
- * @defgroup Ewl_Combo Combo: A Simple Internal Combo Box
- * Defines a combo box used internally. The contents on the box are not drawn
- * outside of the Evas.
- *
- * @{
- */
-
- /**
- * @themekey /combo/file
- * @themekey /combo/group
- */
-
- /**
- * A simple internal combo box, it is limited to drawing within the current
- * evas.
- */
- typedef struct Ewl_Combo Ewl_Combo;
-
- /**
- * @def EWL_COMBO(combo)
- * Typecasts a pointer to an Ewl_Combo pointer.
- */
- #define EWL_COMBO(combo) ((Ewl_Combo *) combo)
-
- /**
- * @struct Ewl_Combo
- * Inherits from the Ewl_Menu_Base and does not extend the structure, but
- * provides policy for drawing on the current evas.
- */
- struct Ewl_Combo
- {
- Ewl_Menu_Base base; /**< Inherits from menu_base. */
- Ewl_Widget *button; /**< The button used to expand/collapse the selector. */
- Ewl_Widget *selected; /**< An entry that contains the current selection. */
- };
-
- Ewl_Widget *ewl_combo_new(char *title);
- int ewl_combo_init(Ewl_Combo *combo, char *title);
- Ewl_Widget *ewl_combo_selected_get(Ewl_Combo *combo);
- void ewl_combo_selected_set(Ewl_Combo *combo, Ewl_Widget *item);
-
- /*
- * Internally used callbacks, override at your own risk.
- */
- void ewl_combo_item_focus_in_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_combo_configure_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_combo_value_changed_cb(Ewl_Widget *w, void *ev_data, void *user_data);
- void ewl_combo_expand_cb(Ewl_Widget * w, void *ev_data, void *user_data);
- void ewl_combo_collapse_cb(Ewl_Widget * w, void *ev_data, void *user_data);
-
- /**
- * @}
- */
-
- #endif /* __EWL_COMBO_H__ */
-